{
 "metadata": {
  "name": ""
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "#Agenda\n",
      "\n",
      "- Define the problem and the approach\n",
      "- Data basics: loading data, looking at your data, basic commands\n",
      "- Handling missing values\n",
      "- Intro to scikit-learn\n",
      "- Grouping and aggregating data\n",
      "- Feature selection\n",
      "- <p style=\"color: red\">Fitting and evaluating a model</p>\n",
      "- Deploying your work"
     ]
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "#In this workbook you will\n",
      "- Create your own classifier for predicting delinquent customers\n",
      "- Build basic reports to help interpret the effectiveness of your model\n",
      "- Convert the results of your model to a credit score"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import pandas as pd\n",
      "import numpy as np\n",
      "import pylab as pl"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 1
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "train = pd.read_csv(\"./data/credit-data-trainingset.csv\")\n",
      "test = pd.read_csv(\"./data/credit-data-testset.csv\")\n",
      "test.head()"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "html": [
        "<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
        "<table border=\"1\" class=\"dataframe\">\n",
        "  <thead>\n",
        "    <tr style=\"text-align: right;\">\n",
        "      <th></th>\n",
        "      <th>serious_dlqin2yrs</th>\n",
        "      <th>revolving_utilization_of_unsecured_lines</th>\n",
        "      <th>age</th>\n",
        "      <th>number_of_time30-59_days_past_due_not_worse</th>\n",
        "      <th>debt_ratio</th>\n",
        "      <th>monthly_income</th>\n",
        "      <th>number_of_open_credit_lines_and_loans</th>\n",
        "      <th>number_of_times90_days_late</th>\n",
        "      <th>number_real_estate_loans_or_lines</th>\n",
        "      <th>number_of_time60-89_days_past_due_not_worse</th>\n",
        "      <th>number_of_dependents</th>\n",
        "      <th>monthly_income_imputed</th>\n",
        "    </tr>\n",
        "  </thead>\n",
        "  <tbody>\n",
        "    <tr>\n",
        "      <th>0</th>\n",
        "      <td> 1</td>\n",
        "      <td> 0.766127</td>\n",
        "      <td> 45</td>\n",
        "      <td> 2</td>\n",
        "      <td>  0.802982</td>\n",
        "      <td>  9120</td>\n",
        "      <td> 13</td>\n",
        "      <td> 0</td>\n",
        "      <td> 6</td>\n",
        "      <td> 0</td>\n",
        "      <td> 2</td>\n",
        "      <td>  1846</td>\n",
        "    </tr>\n",
        "    <tr>\n",
        "      <th>1</th>\n",
        "      <td> 0</td>\n",
        "      <td> 0.957151</td>\n",
        "      <td> 40</td>\n",
        "      <td> 0</td>\n",
        "      <td>  0.121876</td>\n",
        "      <td>  2600</td>\n",
        "      <td>  4</td>\n",
        "      <td> 0</td>\n",
        "      <td> 0</td>\n",
        "      <td> 0</td>\n",
        "      <td> 1</td>\n",
        "      <td> 18000</td>\n",
        "    </tr>\n",
        "    <tr>\n",
        "      <th>2</th>\n",
        "      <td> 0</td>\n",
        "      <td> 0.213179</td>\n",
        "      <td> 74</td>\n",
        "      <td> 0</td>\n",
        "      <td>  0.375607</td>\n",
        "      <td>  3500</td>\n",
        "      <td>  3</td>\n",
        "      <td> 0</td>\n",
        "      <td> 1</td>\n",
        "      <td> 0</td>\n",
        "      <td> 1</td>\n",
        "      <td>  2100</td>\n",
        "    </tr>\n",
        "    <tr>\n",
        "      <th>3</th>\n",
        "      <td> 0</td>\n",
        "      <td> 0.116951</td>\n",
        "      <td> 27</td>\n",
        "      <td> 0</td>\n",
        "      <td> 46.000000</td>\n",
        "      <td>     0</td>\n",
        "      <td>  2</td>\n",
        "      <td> 0</td>\n",
        "      <td> 0</td>\n",
        "      <td> 0</td>\n",
        "      <td> 0</td>\n",
        "      <td>     0</td>\n",
        "    </tr>\n",
        "    <tr>\n",
        "      <th>4</th>\n",
        "      <td> 0</td>\n",
        "      <td> 0.548458</td>\n",
        "      <td> 64</td>\n",
        "      <td> 0</td>\n",
        "      <td>  0.209892</td>\n",
        "      <td> 11362</td>\n",
        "      <td>  7</td>\n",
        "      <td> 0</td>\n",
        "      <td> 1</td>\n",
        "      <td> 0</td>\n",
        "      <td> 2</td>\n",
        "      <td>  3928</td>\n",
        "    </tr>\n",
        "  </tbody>\n",
        "</table>\n",
        "</div>"
       ],
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 3,
       "text": [
        "   serious_dlqin2yrs  revolving_utilization_of_unsecured_lines  age  \\\n",
        "0                  1                                  0.766127   45   \n",
        "1                  0                                  0.957151   40   \n",
        "2                  0                                  0.213179   74   \n",
        "3                  0                                  0.116951   27   \n",
        "4                  0                                  0.548458   64   \n",
        "\n",
        "   number_of_time30-59_days_past_due_not_worse  debt_ratio  monthly_income  \\\n",
        "0                                            2    0.802982            9120   \n",
        "1                                            0    0.121876            2600   \n",
        "2                                            0    0.375607            3500   \n",
        "3                                            0   46.000000               0   \n",
        "4                                            0    0.209892           11362   \n",
        "\n",
        "   number_of_open_credit_lines_and_loans  number_of_times90_days_late  \\\n",
        "0                                     13                            0   \n",
        "1                                      4                            0   \n",
        "2                                      3                            0   \n",
        "3                                      2                            0   \n",
        "4                                      7                            0   \n",
        "\n",
        "   number_real_estate_loans_or_lines  \\\n",
        "0                                  6   \n",
        "1                                  0   \n",
        "2                                  1   \n",
        "3                                  0   \n",
        "4                                  1   \n",
        "\n",
        "   number_of_time60-89_days_past_due_not_worse  number_of_dependents  \\\n",
        "0                                            0                     2   \n",
        "1                                            0                     1   \n",
        "2                                            0                     1   \n",
        "3                                            0                     0   \n",
        "4                                            0                     2   \n",
        "\n",
        "   monthly_income_imputed  \n",
        "0                    1846  \n",
        "1                   18000  \n",
        "2                    2100  \n",
        "3                       0  \n",
        "4                    3928  "
       ]
      }
     ],
     "prompt_number": 3
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "##Import some classifiers"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from sklearn.linear_model import LogisticRegression\n",
      "from sklearn.neighbors import KNeighborsClassifier\n",
      "from sklearn.ensemble import RandomForestClassifier, GradientBoostingClassifier\n",
      "from sklearn.svm import SVC"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 5
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "##Fitting your model"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "features = ['revolving_utilization_of_unsecured_lines', 'debt_ratio',\n",
      "            'monthly_income', 'age', 'number_of_times90_days_late']\n",
      "\n",
      "clf = KNeighborsClassifier(n_neighbors=13, warn_on_equidistant=False)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stderr",
       "text": [
        "-c:4: DeprecationWarning: The warn_on_equidistant parameter is deprecated and will be removed in 0.16.\n"
       ]
      }
     ],
     "prompt_number": 6
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "clf.fit(train[features], train.serious_dlqin2yrs)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 7,
       "text": [
        "KNeighborsClassifier(algorithm='auto', leaf_size=30, metric='minkowski',\n",
        "           n_neighbors=13, p=2, weights='uniform')"
       ]
      }
     ],
     "prompt_number": 7
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "###Generating Predictions"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#classes (returns an array)\n",
      "clf.predict(test[features])"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 8,
       "text": [
        "array([0, 0, 0, ..., 0, 0, 0])"
       ]
      }
     ],
     "prompt_number": 8
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#probabilities (returns a numpy array)\n",
      "clf.predict_proba(test[features])"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 9,
       "text": [
        "array([[ 0.92307692,  0.07692308],\n",
        "       [ 1.        ,  0.        ],\n",
        "       [ 1.        ,  0.        ],\n",
        "       ..., \n",
        "       [ 0.92307692,  0.07692308],\n",
        "       [ 1.        ,  0.        ],\n",
        "       [ 1.        ,  0.        ]])"
       ]
      }
     ],
     "prompt_number": 9
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "###Plot a histogram of the probabilities"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "probs = clf.predict_proba(test[features])\n",
      "prob_true = probs[::,1]\n",
      "pl.hist(prob_true)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 12,
       "text": [
        "(array([30658,  4510,  1338,   387,   113,    27,    24,    14,     5,     5]),\n",
        " array([ 0.        ,  0.08461538,  0.16923077,  0.25384615,  0.33846154,\n",
        "        0.42307692,  0.50769231,  0.59230769,  0.67692308,  0.76153846,\n",
        "        0.84615385]),\n",
        " <a list of 10 Patch objects>)"
       ]
      },
      {
       "metadata": {},
       "output_type": "display_data",
       "png": "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\n",
       "text": [
        "<matplotlib.figure.Figure at 0x10ba22f50>"
       ]
      }
     ],
     "prompt_number": 12
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "##[Evaluating your model](http://scikit-learn.org/stable/modules/model_evaluation.html#classification-metrics)"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from sklearn.metrics import roc_curve, auc, classification_report, confusion_matrix"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 13
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "preds = clf.predict_proba(test[features])\n",
      "preds"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 14,
       "text": [
        "array([[ 0.92307692,  0.07692308],\n",
        "       [ 1.        ,  0.        ],\n",
        "       [ 1.        ,  0.        ],\n",
        "       ..., \n",
        "       [ 0.92307692,  0.07692308],\n",
        "       [ 1.        ,  0.        ],\n",
        "       [ 1.        ,  0.        ]])"
       ]
      }
     ],
     "prompt_number": 14
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "##Classification reports"
     ]
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "###What does this tell you?"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "confusion_matrix(test['serious_dlqin2yrs'], clf.predict(test[features]))"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 15,
       "text": [
        "array([[34572,    21],\n",
        "       [ 2461,    27]])"
       ]
      }
     ],
     "prompt_number": 15
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "print classification_report(test['serious_dlqin2yrs'], clf.predict(test[features]), labels=[0, 1])"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "             precision    recall  f1-score   support\n",
        "\n",
        "          0       0.93      1.00      0.97     34593\n",
        "          1       0.56      0.01      0.02      2488\n",
        "\n",
        "avg / total       0.91      0.93      0.90     37081\n",
        "\n"
       ]
      }
     ],
     "prompt_number": 16
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "###Write your own version of confusion_matrix using `pandas`. Be sure to label the rows/columns.\n",
      "*HINT: use crosstab*"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#DELETE#pd.crosstab(test['serious_dlqin2yrs'], clf.predict(test[features]), rownames=[\"Actual\"], colnames=[\"Predicted\"])"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "html": [
        "<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
        "<table border=\"1\" class=\"dataframe\">\n",
        "  <thead>\n",
        "    <tr style=\"text-align: right;\">\n",
        "      <th>Predicted</th>\n",
        "      <th>0</th>\n",
        "      <th>1</th>\n",
        "    </tr>\n",
        "    <tr>\n",
        "      <th>Actual</th>\n",
        "      <th></th>\n",
        "      <th></th>\n",
        "    </tr>\n",
        "  </thead>\n",
        "  <tbody>\n",
        "    <tr>\n",
        "      <th>0</th>\n",
        "      <td> 34572</td>\n",
        "      <td> 21</td>\n",
        "    </tr>\n",
        "    <tr>\n",
        "      <th>1</th>\n",
        "      <td>  2461</td>\n",
        "      <td> 27</td>\n",
        "    </tr>\n",
        "  </tbody>\n",
        "</table>\n",
        "</div>"
       ],
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 17,
       "text": [
        "Predicted      0   1\n",
        "Actual              \n",
        "0          34572  21\n",
        "1           2461  27"
       ]
      }
     ],
     "prompt_number": 17
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "###The ROC Curve\n",
      "To evaluate our classifier, we're going to use an [ROC Curve](http://en.wikipedia.org/wiki/Receiver_operating_characteristic). ROC Curves are great for evaluating binary (0, 1) classification models. A ROC Curve plots the False Postive Rate (fpr) vs. the True Positive Rate (tpr) for a classifier.\n",
      "\n",
      "See example in [scikit-learn docs](http://scikit-learn.org/stable/auto_examples/plot_roc.html#example-plot-roc-py)."
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "def plot_roc(name, probs):\n",
      "    fpr, tpr, thresholds = roc_curve(test['serious_dlqin2yrs'], probs)\n",
      "    roc_auc = auc(fpr, tpr)\n",
      "    pl.clf()\n",
      "    pl.plot(fpr, tpr, label='ROC curve (area = %0.2f)' % roc_auc)\n",
      "    pl.plot([0, 1], [0, 1], 'k--')\n",
      "    pl.xlim([0.0, 1.05])\n",
      "    pl.ylim([0.0, 1.05])\n",
      "    pl.xlabel('False Positive Rate')\n",
      "    pl.ylabel('True Positive Rate')\n",
      "    pl.title(name)\n",
      "    pl.legend(loc=\"lower right\")\n",
      "    pl.show()\n",
      "plot_roc(\"Perfect Classifier\", test['serious_dlqin2yrs'])\n",
      "plot_roc(\"Guessing\", np.random.uniform(0, 1, len(test['serious_dlqin2yrs'])))\n",
      "\n",
      "#[::,1] selects the 2nd column of the numpy array\n",
      "plot_roc(\"KNN\", preds[::,1])"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "display_data",
       "png": "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\ntvA9AAAAAElFTkSuQmCC\n",
       "text": [
        "<matplotlib.figure.Figure at 0x10ba3bdd0>"
       ]
      },
      {
       "metadata": {},
       "output_type": "display_data",
       "png": "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\nRU5ErkJggg==\n",
       "text": [
        "<matplotlib.figure.Figure at 0x10901e450>"
       ]
      },
      {
       "metadata": {},
       "output_type": "display_data",
       "png": "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\n",
       "text": [
        "<matplotlib.figure.Figure at 0x10ba79f50>"
       ]
      }
     ],
     "prompt_number": 18
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "clf = RandomForestClassifier()\n",
      "clf.fit(train[features], train.serious_dlqin2yrs)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 19,
       "text": [
        "RandomForestClassifier(bootstrap=True, compute_importances=None,\n",
        "            criterion='gini', max_depth=None, max_features='auto',\n",
        "            min_density=None, min_samples_leaf=1, min_samples_split=2,\n",
        "            n_estimators=10, n_jobs=1, oob_score=False, random_state=None,\n",
        "            verbose=0)"
       ]
      }
     ],
     "prompt_number": 19
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "probs = clf.predict_proba(test[features])[::,1]\n",
      "plot_roc(\"RandomForest\", probs)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "display_data",
       "png": "iVBORw0KGgoAAAANSUhEUgAAAYAAAAEVCAYAAADpbDJPAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xd8U9X7B/BP00l3oXsRCpRVoKCstmyhbFllV0VBFBAV\n0LJBCrJURJYCfrVF/KlFLVVAUKYpS/YSyuiA7rSku0manN8ftbG1I0mb5GY879erL01yc/M8pL3n\n3nOee44ZY4yBEEKIyeFxHQAhhBBuUANACCEmihoAQggxUdQAEEKIiaIGgBBCTBQ1AIQQYqKoASCc\nWbNmDezs7ODn5wcfHx907doVBw8e1OpnPnz4EDye5n/tq+dS9TN58mSNf44m8Xg8PH78mOswCIcs\nuA6AmC4zMzNMmDABsbGxAIBLly7hhRdeQFBQENq3b89xdOr5by76rur2H7oNyLTRFQDhDGOsxgGo\nZ8+eaNWqFe7duwcAuHXrFqZMmYIOHTrA1dUVQ4cORWZmpmL706dPw9fXFz///DN69OgBNzc3TJs2\nrcY+nz17hokTJ8Ld3R3BwcH49ddfa8Xx4MEDDB8+HH5+fmjbti1WrFiBiooKxes8Hg9ffPEFfHx8\nsHr1auzcuRMeHh7Ys2dPvbnU5a+//kK/fv3g5+eH9u3b49NPP621zYABA/Dpp59iypQp8PPzA5/P\nR25uruJ1sViMxYsXo1WrVmjdujWWL18OuVxeYx8JCQno0aMH/P394efnh4ULF9Z4/ZtvvoG/vz8A\noG/fvvDz88PixYsbjJ0YKUYIR1avXs1mzJjBGGNMJpOx/fv3Mx8fH5afn88YY+zx48fsxo0bjDHG\nysrKWHh4OJs7d67i/adOnWIWFhZs6dKlrLy8nAmFQubi4sL++OMPxTZTp05lo0ePZuXl5aysrIy9\n8sorzMzMTPF6cXEx8/PzY7t372aMMSYSidigQYPY+++/r9jGzMyMRUdHs+PHjzMrKyt24MABtnv3\nbtarV686c6lLeno6c3FxYQkJCYwxxp4+fco6d+7Mdu3aVWO7/v37M19fX3bo0CHGGGOFhYU1Xl+w\nYAEbOHAgKygoYGVlZWzo0KFsy5YtNfKxtLRkJ06cUDz3331Uz+vRo0f1xkyMHzUAhDOrV69m9vb2\njM/nMysrKzZ58mSWmppa7/bbt29nAwcOVDw+deoU8/X1rbFNaGgo++qrrxhjjEmlUmZpacnu3Lmj\neP3Bgwc1GoDvvvuOdevWrcY+rl69yuzs7BSPqw6U9+/fV7z38OHDrG3btnXmUvXz448/Kl7fuHEj\nGzduXI3P+emnn1jHjh1rPDdgwIAaB/TqZDIZs7W1ZRcuXFA8d+7cORYYGKh4LJVKma+vL1u6dKnS\ngzs1AITGAAinxo0bh9jYWERGRkIoFCq6JoDK7pvo6GhcuHABPB4PhYWFcHZ2bnB/lpaWii6RvLw8\nVFRUoFWrVvVun5qaitatW9d4rk2bNigtLUVeXh5atGiheL764DGPx6vV5VOVS13S0tLq/JzU1NRa\n2zZv3rzOfeTl5aGsrAyTJ0+GmZkZAEAul6O8vFyxjYWFBS5evIjdu3djwoQJKC0txdq1a/V+QJpw\ng8YACGfMzMwUB9Fdu3bhwYMH2LJli+L11157DVKpFCdPnoRAIMC7776r1qClm5sbrK2ta1S6yGSy\nGtu0bNkSSUlJNZ67d+8ebG1taxz81cmlLv7+/rh//36tz+Hz+Sp/hqurKxwcHHDy5EkkJycjOTkZ\nqampyM7OrrGdt7c3oqOjce3aNXzzzTd45ZVX6mxoCKEGgHCm+gHTwcEB3377LdasWYNLly4BAJ4+\nfYo2bdrAxsYGt27dwieffAKpVKryfnk8HiZNmoQ1a9agoqICQqEQb7/9do1tR48ejfz8fGzbtg2M\nMeTn52PhwoWYO3duo3OpS2RkJM6cOYOffvoJQOUVwerVq+v8nPr2ZWZmhnfffRezZs1Cenq6YtvC\nwsIa21Vv8CoqKmBmZgYrK6ta+3N2dsbly5cBAOnp6bUGk4nxowaAcMbMzEzRlQFUVgGtXLkS06ZN\nQ1FRET755BPs2rUL/v7+WLZsGRYtWoSMjIxa+6hrv1U++ugjFBYWwt3dHeHh4Zg4cWKN121tbfHH\nH3/g6NGj8Pf3R48ePdC3b1+sX7++zv019P91xVLF29sbx48fx9atW+Hr64shQ4Zg9uzZePPNNxuM\n/79WrVqF0aNHY+jQofD390ebNm2wc+fOGtvMmjULPj4+8PPzw9tvv424uDh4eXnV2te6deswf/58\nBAQEIDIyEs+ePav3c4lxMmPqXFMTQggxGnQFQAghJooaAEIIMVHUABBCiIkymPsATpw4wXUIhBBi\nkAYPHlzn8wbTAABA9+7duQ6BEEIMytWrV+t9jbqADIBAIOA6BE5R/pS/KdNm/tQAEEKIiTKY+wBO\nnDhBXUCEEKKmq1ev1jsGQFcAhBBioqgBMADUB0r5mzLKn8YACCGEaJjGxwD+/vtvxMbGomPHjoiM\njGxw25s3byoWAZ80aRKCgoLq3ZbGAAghRH0NjQFo/D4AqVSKcePG1Zr7/L/kcjni4uKwcuVKAMD6\n9evRqVOnBmdCJIQQojkabwC6dOmCu3fvKt0uKysLXl5einnKPTw8FM/VRyAQICwsTPH/AEzicfU+\nQH2Ih/Kn/Cl/3Tzu1ScE3/9xAS1t5TAza/z+6qOVMtC7d+/iypUrDXYBJSUl4fz584rHjDGEhIQg\nMDCwzu1NuQuoesNniih/yt+U8i+vkOPK00Ikpohw8UkhnHgSfDohGI42jTtf12kXkKrs7e1RUlKC\nWbNmgTGGffv2wdHRkatw9Jop/fLXhfKn/I1diUSGi2kFSEwpwJX0QrRzs0Mo3wmv9vCGq13t1dw0\nRSsNgCoXFZ6ensjMzFQ8zsrKgqenpzbCIYQQvSMqk+J8agEEKQW4k12MLl726OIsx9xegWjh0Ewn\nMWi8DDQ+Ph5xcXG4cuUK9uzZo3j+/PnzNSYl4vF4mDhxIqKjo7Fu3TpERERoOhSjQXXQlL8pM6b8\nc4oliL+Tg8WHH2Bm3N+4ml6EIYHN8e3UIDxXdhsrXx6DW1cu1niPNvPX+BXA2LFjMXbs2FrP9+nT\np9ZzXbt2RdeuXTUdAiGE6I2nBeUQpBQgMUWEzEIxevs7YWKQO7r7OMDKggehUIj5b8zGnTt3EBsb\nix49eugsNpoLiBBCNIgxhsf55UhMEUGQIkKhuAKhLZ0RxndGZy97WPD+LXU/dOgQlixZgoiICCxd\nuhTNmmm+60cvB4EJIcRYyBnDvZxSxUGfAejLd8Y7Yf5o724LXh33NzHGcPbsWZ2f9VdHU0EYAGPq\nA20Myp/y10cVcoZr6UXYnvgE0/7vNj4VpMHagodVLwQgZlJHzO7lg44ednUe/AHAzMwMH3/8sdKD\nv0GNARBCiLGSVMhxNb0IghQRLqQVwMvRGmF8Z3w0si18nWy4Dk9tNAZACCENKJXIcOlpIRKTRbic\nXoQ2LZohlO+MkJZOcLdXrUY/ISEB3bt3h6+vr5ajrY3GAAghRA2F5RU4n1YAQYoItzKL0cnDHmF8\nJ8wL8YVzM0uV9yMUCvH+++/jzp07+PLLLzlpABpCYwAGQF/7QHWF8qf8dUFYIkHC3Vy8f+QBXvr+\nDi6lFWJggAsOTA3C+mGtMby9q1oH/0OHDqFv377w9fXF6dOnG5ztuCE0BkAIIVqQUShGYooIiSkF\neFJQjl5+jnixoxue83WEjUXjzo8ZY3jzzTdx7do1Tit8VEFjAIQQk8EYQ+qzcghSRBCkFOBZmRQh\nLZ0QxndGFy97WJprplPk9OnT6NWrl1bq+tVFYwCEEJPFGMP93Koa/QJUyBlC+U6YH+KLDu52MOdp\nfg2SAQMGaHyf2kBjAAaA+oApf1PWmPxlcoYbmUXYee4pZnx3B1vOpsKcZ4Zlg/iIndwRb/T2RZCn\nvVYO/ppGYwCEEKKERCbH9YwiCFIKcD61AO52lgjlO2PDsDbwd9F8jX5Vhc+0adPwwgsvaHz/ukBj\nAIQQg1UuleGvp5U3Zv31pBB8FxuE8p0RyneCp4O11j5XF3P4aAqNARBCjEaRuAIX0wohSBHhekYR\nOrjbIYzvjDm9fNDcVvUyzcaoXtev7xU+qqAxAANAfcCUvykTCATIL5Xi8N9CLD36EJHf3YEgRYQw\nvjP2T+mEDcPbYGQHV60f/BljiIyMVNT16+rgT2MAhBCTk1UkRmJKAY6m2iD/8d/o6eeIEe1dsfqF\nVrCxNNd5PGZmZvjpp5/0urtHXTQGQAjRG2n/1OgnpoiQUyJFn5ZOCOM7IdjbAVYaqtE3NTQGQAjR\nS4wxPMgrU8yjXyaRI5TvjNd7+yDIg7syTaFQCDs7O6M6268LNakGgPqAKX9jIpMz3MoqxucXniLy\n+zv48GQK5HKG9/q1xDdTO2FeiC+6ejkoDv66zr9qDp8zZ87o9HPrQ2MAhBCDJpXJcTOzGH+miHA+\ntQAuzSwRxnfCuqGt0dLFBmb1LJqiS8ZW4aMKGgMghGhFeYUcV54WIjFFhItPCuHnZINQvhNC+c7w\ndtRejX5jGFJdv7poDIAQohMlEhkuphUgMaUAV9ILEehmizC+M17t4Q1XO9UWT+GCIczcqQ00BmAA\njK0PWF2Uv37nLyqT4ug9IZb/9gjT/+82Tj1+hp7+joiZ3AmbR7TFmI5uTTr46yL/NWvW6O3Bn8YA\nCCF6JadYgnOplbNrPsorw/M+DhgS2BzLB/Fha6X7Gn3SODQGQAhRydOCcghSCpCYIkJmoRi9/Svn\n0e/u4wCrRi6eomuHDh1C+/bt0a5dO65D0RkaAyCEqI0xhsf5ZRCkVK6NWySuQGhLZ7z6vDc6e9nD\nwgCmUq5SvcJnz549XIejNwyj2TZx+t4HrG2Uv+7ylzOGu9kl2HsxHa/8cBcf/JEMSYUc74b549up\nQXgr1A/dfBx0evBvav7/XZu3a9euGopMN2gMgBCiNRVyhluZxZVTMKSK4GhtgTC+M1a9EICA5vpR\no99YCxYswMWLF02ywkcVNAZAiAmSVMhxNb1yHv0LaQXwcrRGKN8ZYXwn+DppfvEUrly8eBFdunQx\nqrp+ddEYACEEpRIZLj0tRGKyCJfTi9C6RTOE8Z3w0nNecLfX3xr9pujVqxfXIeg1GgMwANQHTvk3\nVmF5BY4l5WHl8UeY9n+38XtSPrr7OOCriA74aGRbjO3krvcHf1XzN5DODLXRGAAhRGXCEgnOpVZW\n7iTlluI5H0cMDHDBkgF82BlhjX5Vhc/o0aMxbtw4rsMxKCqNAeTk5CA9PR3dunUDAJSXl8PGRrf9\nhDQGQEj9MgrFiimVnxaI0cvPEaF8Zzzn6wgbA6nRbwxjnsNHU5o0BnD27FkcO3YMEokE3bp1A2MM\nH374IdauXavxQAkhqmGMIfWfxVMEKQV4ViZFSEsnvNTdC1287GFp5IunmOLMndqgtAE4duwY1qxZ\ngw8//BAAVCoJu3nzJg4ePAgAmDRpEoKCgurd9syZMzh27BjMzc0xefLkBrc1VQKBAGFhYVyHwRnK\nvzJ/xhju55b+c6ZfAKlcjjC+M+aF+KKjux1ni6doW13f/xtvvIGOHTti586dRn/Wr83ff6UNgLm5\nOSwt/11suby8HBKJpN7t5XI54uLisHLlSgDA+vXr0alTp3objl9++QWbN29GeXk51q9fj/Xr16ub\nAyFGSyZnSCnl4ca5pziXKoKNBQ9hrZyxdBAfbVs0M+ga/aY4cOAArK31a0ppQ6S0AWjbti0OHDiA\n0tJSXL58GQkJCQ22RllZWfDy8oKVVWVlgYeHh+K5uvj6+uLu3bsQiUQIDAxsZBrGzZTPfgHTy18i\nk+N6RhEEKQU4n1oAd7vmCHWzwIZhbeDvYjw1+qqq6/s3pYO/Nn//lTYA06dPxx9//AE3Nzf8+eef\nGDp0aIMBFRcXw87ODjExMQAAW1tbFBUV1dsAdOnSBYcPH0ZFRQXCw8MbjKX6pVBVaRQ9psfG8Pjk\nWQEeFpsjr5kX/npSiObmErR3qMD2F7vB08EaAoEAaXcAfz2JV1eP27dvDysrK9y8eVMv4jHUx/XR\n+J3AGRkZiI+Px6xZs8AYw759+zBhwgR4enrW2jY7Oxv79+/H4sWLAQCrV6/G8uXLFVcP1ZlyFRD1\ngRtn/kXiClxIq1wx63pGETq42yGM74w+LZ3Q3PbfbldjzV+Zqgqfl19+GUuWLOE6HM409fvX+J3A\nYrG43kswT09PZGZmKh5nZWXVefAHKscLZDIZgMqqhobGFggxBvmlUpz/p0b/75wSBHs7IIzvjEX9\n/OFgTbflALUrfMRiMdchGS2lVwBxcXGIiIhQPJbL5di4cSOWLVtW73tu3LihqAKKiIhAly5dAADn\nz5+HtbV1jTP5n376Cffv34dcLkdoaCgGDBhQ5z5N+QqAGLasIjES/5lHP+VZOXr+U6Pfw9cBNpbG\nd2NWU1Bdv+Y16Qrg1q1bNRoAHo+HsrKyBt/TtWvXOqdc7dOnT63nxo8frywEQgxO2j81+okpIuSU\nSNGnpROmBHsg2NsBVkZeo98UDx8+pLp+Haq3Abh27RquXbuG7OxsfPXVV4p5NgoKCuiSTMdMtQ+4\niiHkzxjDg7wyxd24ZRI5QvnOeL23D4I87JtUo28I+WvKokWLaj1nSvnXhZP7AFxcXBAQEIAbN26g\nVatWiuetrKzQuXNnrQRDiCGRyRnu5pQoDvoWPB768p3wXr+WCHSzBc9Ea/SJ4VA6BvDbb79h2LBh\nuoqnXjQGQPSBVCbHjX8WTzmXUoDmtpYI41eujdvSxbAXT9GlQ4cOwc/Pj/6mdaBJYwD6cPAnhEvl\nFXJceVoIQYoIl54Uws/JBqF8J3w6JhDejqZzQ5ImVK/w+fzzz7kOx+TRaJQBoPnwdZ9/iUSGkw/z\nsfaPx5hy4BYO3c1FB3c7fDG+PT4dE4iILh46O/gby/f/37V5q2YXVsZY8m8sTtcDyMjIwK+//opn\nz54BqBzsKigowIYNG7QWFCFcEJVV1egX4E52MTp72SOM74y3w/zhZEM1+k2xaNEiCAQCqvDRM0rH\nAKKiotCvXz9kZGQgICAAjx8/ho+PD0aMGKGrGAHQGADRjpxiCc6lVs6u+SivDM/7OCC0lTN6+jrC\n1ggXT+HK9evX0a5dO6rr50CTxgCsrKwwcuRInDlzBg4ODnjttdewbt06nTcAhGjK04JyCP65MSuj\nUIw+/k6YGOSObj4OsDbixVO4FBwczHUIpA5Kf9urWuyWLVviwoULqKioQF5entYDI/+iPtCm5c8Y\nw6O8UsRcycTsH//G4sMPkFsswavPe+P76Z2xuH9L9G7ppLcHf0P7/jW9Nq+h5a9pnI4BDBw4EEVF\nReDz+QCAOXPmYMKECVoLiBBNkDOGv3NKkJhSOe8OAPTlO+PdMH+0d6cafW2oqvAZMGAAXnrpJa7D\nISrQ+Gyg2kJjAESZCjnDrX9q9BNTRXCwtkAY3xlhfCcENDfdxVN0gebw0V8anw00JycH7u7uTQqK\nEE2QVMhxNb0IghQRLqQVwMvRGqF8Z2wZ0RZ+zqa3eIqu0dq8hq3eTs/CwkIcOHAAx48fVzxXUVGB\ngwcPYunSpToJjlSiPtCa+ZdKZDj9+BnWn0jG5G9v4+DtHLRxbYZd49pj+4vtMKWrh1Ed/PX5+1+8\neLGirl9bB399zl8XOBkD2LVrF9q1a4fk5GScOHECbm5u+PLLL8Hn87Fp0yatBURIXQrLK3A+rbI/\n/1ZmMTp52COM74R5Ib5wbmapfAdEK/bt2wcLC7pHwlDV+80VFRVh3LhxkMlkmDt3Luzt7TF79mwE\nBQXpMj4C01sTt4qwRIJzqQUQFHrgo+/v4DkfRwwMcMGSAXzYmVCNvj5//7o4+Otz/rrAyZrA5ubm\niv+6u7vjgw8+AI+nn2VyxHhkFIoV8+g/LRCjl58jXuzohud8HWGjp2WapkAoFIIxBjc3N65DIRpU\nbwPw5MkTRVdPRkYGtmzZUuP1qKgo7UZGFIx5PnTGGFL/WTxFkFKA/FIpQvhOeKm7F7p42cPSnAeB\nQAAbvnHmrwquv/+qCp81a9Zg8uTJOv98rvPnGifrAVQt1F4XKqcjTSFnDEm5pf/Mo18AqVyOML4z\n5oX4oqO7XZMWTyGaIxQK8d577+Hu3btU4WOk6D4AohMyOcPt7GIIkgtwLlUEGwsewlo5I5TvjLYt\nqEZf3xw6dAhRUVGYNGkS1fUbOI3fB0CIKiQyOa5nFEGQUoDzqQVwt7NEKN8ZG4a1gb+L8ZRpGqOs\nrCzs37+fzvqNHDUABsCQ+kDLpDL89bQQiSkF+OtJIfguNgjlO2NasAc8HRo3f74h5a8NXOQ/Z84c\nnX5eQ+j752AMgBBVFYkrcCGtEIkpIlzPKEIHdzuE8Z0xp5cPmttSjT4h+orGAEij5JdKK2v0U0S4\nl1OCYG8HhPKd0dvfEQ7WdF5hKOLj49GiRQv07duX61CIltAYANGIrCKxYnbNlGfl6OnniBHtW2D1\nC63QzNJ0bswyBtUrfHbt2sV1OIQjdGeNAeByLpQ0UTm+vZaFeT/fw1uHkpAqKsfUYA98Pz0ISwfy\n0a+Vi9YP/jQXjGbzj4+PR1hYGPz8/HD69Gk899xzGt2/ptH3z+F6AMQ0SWVyfHQ2DacePcOLHd3w\nem8fBHnYU42+gVuyZAlOnTpFFT4EgBpjAMXFxbC3t9d2PPWiMQDdySoSY/3JFLSwtcT8EF+42llx\nHRLRkHv37qFly5ZU129CGhoDUNoF9PjxY7z33ntYsWIFAEAul2P37t2ajZDojcQUEd46lISBrV2w\n+oVWdPA3Mu3bt6eDP1FQ2gDExMTg/fffh4uLS+UbeDxkZmZqPTDyL130gUplcuw+/xSfX0hH9NAA\njA9y15u7c6kPuHH5y+VyDUfCDfr+tZe/0gbAzMys1gyAUqlUawER3csqEmPhrw+QXSzBrnHt0N7d\njuuQSBMIhULMnDkTn3/+OdehED2ntAFwcHDAtWvXwBhDWVkZYmJi0KpVK13ERv6hzbsg/9vlo481\n/KZ8FyigXv7VK3xmzpypxah0h75/DtYDqDJ79mz873//w5MnT7BgwQL06NEDL730ktYCIrohlcmx\n71IGzqUWIHpoAJ31G7jqa/NShQ9RldIGwNHREe+8844uYiH10PRcINWrfHaNa6eXZ/3V0VwwyvNf\ntWoVfH19sXPnTqMb5KXvn+YCIhqSmCLCp4InmBbsgbGd3PRmoJc0zfbt2xWr+BGiKqX3ASxbtgyD\nBg1CWFgYbGy4m8KX7gNoGsk/XT7nUwuwfBCfunwIMRFNmgtozpw5OHv2LKKiohAYGIhBgwahQ4cO\nDb7n5s2bOHjwIABg0qRJDS4kn5eXhx07dkAmk6F169Z4+eWXlYVE1JRZWNnl42pnGF0+pH5CoRBi\nsRg+Pj5ch0KMgNIqoJYtWyIyMhJbt25F3759ceDAAbz99tv1bi+XyxEXF4cVK1ZgxYoViIuLQ0MX\nGfv378eUKVOwdu1aOvjXoyl1wIJkERYkJGFwG/2t8lGG6sAr809ISEDfvn1x8uRJjiPSLfr+OZ4L\nqLCwEAKBAAKBAHZ2dhg+fHi922ZlZcHLywtWVpV3kHp4eCie+y+5XI7s7Gy0a9dOpWCrD4ZU/aPQ\n47ofnz4rwB+5VkiV2iF6aACESdeQmJikN/HRY9UfFxQUYMyYMUhOTlaszatP8dFj/X9cH6VjABs2\nbEBWVhb69u2LAQMGwNXVtcEdJiUl4fz584rHjDGEhIQgMDCw1rYikQjR0dHw9PREaWkphg8fjp49\ne9a5XxoDUF31Lp9F/fwN8qyfVPr111/x3nvvISIigtbmJY3SpDGAUaNGoXPnzip/mL29PUpKSjBr\n1iwwxrBv3z44OjrWu62trS0WLVoEuVyOlStXIjg4WHH1QNQnSBZhWyJV+RgLkUikOOsnRNOUjgGo\nc/AHAE9PzxpzBWVlZcHT07PObS0sLODq6gqRSAQLCwtYWNCZal1U6QOUyOTYdf4p9lxKx7rwAIzT\no7l8msqU+4BnzJgBsVjMdRicMuXvH9CDMQB18Hg8TJw4EdHR0QCAiIgIxWvnz5+HtbV1ja6c6dOn\n44svvkBpaSn69OlDZ/+NkFkoxrqTyXC3t8Kuse1gT10+hBAV1DsGIJPJ9OrGEhoDqNufySJ8lvgE\n07t54MWO1OVjqBISEmBlZYVhw4ZxHQoxMo0aA9izZw/efPPNOuf9MTMzQ0xMjOYiJGqTyOTYezED\nF58UYF14ANq50Y1dhqj6HD47duzgOhxiYuodA5gzZw4AgM/nIzY2tsYPHfx16799gJmFYrz7SxKE\npRLsGtvO6A/+xtoHXFXX7+vri9OnT9c70Gus+auK8udgDIDHq2wb6I5D/UJdPsZh9erV+O2336jC\nh3BK5TWBuWbqYwDVu3yWD+Ib/Vm/sXv06BG8vb2prp9oXZPuAyDcoyof49O6dWuuQyBE+X0A/8UY\nw8OHD7URC6nDn8kivPnjHQxp2xyrBrcyyYO/ofcBy2SyJr3f0PNvKsqfwzWBt2zZUuOxmZkZvvvu\nO60FRCpJZHLsPPcEey+lY6pvOcZ2Mp4bu0yFUCjEq6++io8//pjrUAipk9IGoKioqMZjuVyOgoIC\nrQVEgIx/qnzySqXYNbYdJg8J4TokThnialDVK3zeeuutJu3LEPPXJMqfgzWBjx8/jmPHjiEnJweL\nFi1SPF9cXIyOHTtqLSBTdzb5GbYnPsX0bp54saMrnfUbmOp1/VThQ/RdvQ1AWFgYgoODsXXrVixc\nuFAxp7+VlRWcnZ11FqCpqKzyScfFJ4W1buyiNVENJ//NmzdrfG1eQ8pfGyh/DtYEtrW1ha2tLWbO\nnAk3NzetfDiplFEoxvqTyfCgKh+Dt2nTJrpqIwaD7gPgGHX5EEK0ie4D0EPVu3zWh7dGoJst1yER\nNQiFQhQWFiIgIIDrUAhpNLXvAyBNl1EoxrsJ/1b5KDv4Ux20fuWv67V59S1/XaP8OZgL6MKFC+jd\nuzd++eWpitLEAAAgAElEQVSXWq+ZmZlh1KhRWgvKmFV1+czo5okx1OVjUKjChxgbpVcAR48eRXl5\neY2fsrIyXcRmVCQyOXace4IvL2VgfXhrvKjGco2mXAEB6Ef+R44cUWnmTm3Qh/y5RPlzcB9A7969\nAQCurq41VvUi6ssoFGP9iWR4OlhjJ1X5GCSJREJn/cToKL0CmDFjhi7iMFpnHz/D2wlJGBrYAisG\n8xt18Kc+UO7zHzt2LGcHf33In0uUP4drAgcGBmrtw42ZpEKOPZfS8RdV+RBC9BTdB6AF1bt83u3r\nR10+BiQhIQESiQQTJ07kOhRCNKKh+wCUdgEJhULF/1+4cAEHDhxAYWGh5qIzMpro8iG6VzVz5/r1\n69GyZUuuwyFEJ5Q2AJs3bwYApKen46effoKdnR2++OILrQdmaMQVcmz9Mw1f/pWB9cPUq/JRhvpA\ntZu/qmvzcoW+f8pfW5SentrY2AAAzp07hwkTJqBXr15YsWKF1gIyVKuOP8a1jCL8/FIX2FmZcx0O\nUdGGDRsQHx9PFT7EJCm9AmCMISUlBVevXkVwcDAA0M1L/3Hm8TOkF5bjwNROWjn4Ux209vKPjIzU\ny7P+6uj7p/y1RekVwMSJE7F7924MHjwY1tbWkMvlaNOmjdYCMjT3ckqw49xTbBzeBm52VlyHQ9Tk\n6+vLdQiEcEbpFUDXrl2xadMmDB06tPINPB5efvllrQdmCLKKxFjzx2Ms6ueP1i00M/d7XagPVDP5\nS6VSjexH1+j7p/y1hSaDa6QSiQyrjj/G5C4e6O3vxHU4pAFVFT7r1q3jOhRC9IrS+wAkEgl+/vln\nXL9+HQDQvXt3jB07FpaWljoJsIo+3QcgkzOsOv4Ing7WmB/iS2MieiwhIQFRUVGIiIjA0qVLNbZK\nFyGGoknrAcTExMDS0hILFiwAYwxHjx7F119/jdmzZ2s8UEPx+YWnkDNgbh86+OsrmrmTEOWUdgGl\npKTglVdegZeXF7y9vfHaa68hJSVFB6Hpp/g7ubieUYwVg1vBnKebgz/1gaqf/+7du/W2rl9d9P1T\n/tqi9AqAMYaKigpYWFRuKpVKIZfLtRaQPrv0pADfXc/Cp2MCqdZfz61YsYKuzghRQukYwK+//opL\nly5hwIABkMvlOHPmDHr37o2RI0fqKkYA3I8BJOeX4f0jD7FmSCt08rDnLA5CCFFHk8YARo0aBX9/\nf9y4cQMAMGnSJHTu3FmzEeq5/FIpVh1/jDd7+9DBX88IhUIIhUK0b9+e61AIMTgqlYF26dIFkZGR\niIyMNLmDv7hCjjW/P8bQwOYY1KY5JzFQH2jd+et6bV6u0PdP+WtLg1cAd+/eRXp6Otq1awd/f3+V\nd3rz5k0cPHgQQOUVQ1BQUIPbS6VSvP322xgzZgyGDRum8udom5wxbDmTCm9Ha8zo5sl1OOQfVOFD\niGbUewVw6NAh7N+/Hzk5Ofj8889x8eJFlXYol8sRFxeHFStWYMWKFYiLi4OyJQd+//13BAQE6N2g\nXeyVTAhLpVjY15/T2GgulH/z/+233/R65k5toO+f8teWeq8Azp07h+joaFhZWaG0tBQff/wxevXq\npXSHWVlZ8PLygpVV5bw4Hh4eiufqIhaLcfPmTfTu3Rvl5eWNTEPzfn+Qj5OPnuGzMYGwsqAbpvWF\nhYUFnfUToiH1NgDW1taKg7itra3KpZ/FxcWws7NDTEyM4r1FRUX1NgBHjx7FsGHDIBKJlO5bIBAo\nWsOqfjFtPL6VVYydghS87F8G52aWWv88ZY+r9wFy8flcP66e/wsvvMB5PFzmrw/xUP6Gl3996i0D\nnTlzZo3KiqSkpBrrA0dFRdW5w4yMDMTHx2PWrFlgjGHfvn2YMGECPD1r96GXlpbis88+w5IlS3D6\n9GmUl5fXOwagqzLQ9AIxFv6ahPf7t8Rzvo5a/zxVVG/4TBHlT/lT/o3Pv1FloIsXL653hw31h3t6\neiIzM1PxOCsrq86DPwDcu3cPUqkU27ZtQ05ODmQyGYKCgjibordIXIFVxx9hRjdPvTn4A6bZB5qQ\nkIC8vDzMnDnTJPOvjvKn/LWl3gagU6dOjdohj8fDxIkTER0dDQCIiIhQvHb+/HlYW1srzuS7d++u\n+P/Tp09DLBZzdvCvkDNEn0jG876OGN3RjZMYSM0Knx07dnAdDiFGTSujm127dkV0dDSio6PRpUsX\nxfN9+vSptxtnwIABCA8P10Y4SjHGsD3xCazNeXi9lw8nMTTEVOqg61ub11Tyrw/lT/lri9I7gU3B\nwVs5uJ9bgk9GBepsgjdS0yeffILvv/+eKnwI0SGlcwHpC20NAiemiLDj3FNsGxMId3ta0pEr2dnZ\ncHR0pPn6CdGwJs0FZMweCEvxqeAJ1oUH0MGfYx4eHlyHQIjJMdk7nNJE5Vj+2yO8FeqLdm52XIfT\nIGPrA1X3hj9jy19dlD/lry0m2wDsv5KJ/gHO6NfKhetQTEbV2rwrVqzgOhRCCEy0AXicX4abWcV4\nrYc316GoxBjqoKtX+FSVCKvKGPJvCsqf8tcWkxwDiL2SiUldPGBjSat6aRvN3EmI/lJ6BVBYWIjd\nu3dj/fr1ACpr5n/77TetB6YtSbmlSMotxagOrlyHojJD7gP95ptvmjxzpyHnrwmUP+WvLUobgC++\n+ALdunWDRCIBUDkNRGJiotYC0raYKxmYGuwBa5rhUyfeeecdrF27lso7CdFDSo+CxcXF6N27N3i8\nfzc1kFsHarmTVYw0kRjD2rXgOhS1UB8o5W/KKH/t5a+0AeDxeHj27Jni8aVLl2Bnp99lk/X5+kom\npnfzhKU5nf1rmlAoxLVr17gOgxCiBqVHwsjISHz44YdISUlBVFQUvvvuO8ycOVMXsWnU9Ywi5JZI\nMaQtN+v6NoW+94FWVficPXtWK/vX9/y1jfKn/LVFaRVQQEAANmzYgPT0dJibm8Pb27tGd5AhYIzh\n6yuZiOzuSXP9aBBV+BBi2FQ6kltYWKBly5bw9fU1uIM/AFx+WoQSsQwDAgzzpi997AP9/fffdbY2\nrz7mr0uUP+WvLUqvAH755Zdaz5mZmWHUqFFaCUjTGGOIuZKJyOfo7F+T7Ozs6KyfEAOn9HS+vLy8\nxs+dO3eQnJysi9g04nxaASrkDGF8Z65DaTR97AMNCQnR2cFfH/PXJcqf8tcWpVcA1Vf0AoCKigrs\n379fawFpkpwxxFzOxMznvcFrYBlLQggxRWp36FtYWKCwsFAbsWjcn8kiWFnw0Mtff9b3bQwu+0AT\nEhKwbds2zj4foD5gyp/y1xalVwCbNm2q8bigoADNm+t/KaVMzhB7NRNze/s2uIg9qRutzUuI8VN6\nBTBq1KgaP3PmzMHixYt1EVuTnHr0DM42Fuju48B1KE2m6z7Q+tbm5Qr1AVP+pozTMYBOnTpp7cO1\npULOsP9qJhb186ezfzXt2rULMTExVOFDiAlQuiZwbm4u3NzcdBVPvdRZEzj2SiYuphVg57j2Wo7K\n+Dx79gw2NjY0eRshRqKhNYGVdgFt3rxZ4wFp273cEgxqo//jFPrIxcWFDv6EmAilDYCVlWEtll4i\nkeFudgmGG9iMnw3RVh9gSUmJVvaradQHTPmbMk7XAxg0aBBiY2NRXFxc40df/fW0EEGe9rC1otW+\n6lO1Nu97773HdSiEEA4pHQOYN29e7TeZmem8NFDVMYD1J5PRzdsBI9obzopfupSQkICoqChERERg\n6dKl1N1DiJFraAxAaRXQzp07NR6Qtkhkclx+WoS5fXy5DkXv0MydhJD/MrypPRtwI6MYfBcbuDSz\n5DoUjdJEH2BCQoLe1PWri/qAKX9Txsl9AD///DPGjRuntQ/WhnOpIoS0dOI6DL306quvch0CIUTP\n1HsFYGjL+8kZw/nUAqNsAGguFMrflFH+HMwFJJPJGqz2sbe310pAjXUvpxQONhbwcbLhOhROCYVC\nPHjwAH369OE6FEKInqu3AahaA7guXFQBKXMuVYRQIzz7Byr7AFU5C6iq8Hn11VeNqgFQNX9jRflT\n/trKv94GoHXr1li7dq1WPlTTGGNITCnA0kF8rkPhBFX4EEIawyiqgJ6IxJDI5Gjbwjhr2htq/U+c\nOKFXM3dqgymf/QGUP+XPwRjAiBEjtPahmlZV/WOKM3+6urrSWT8hpFHqvQLo3bt3o3d68+ZNrFq1\nCqtWrcLt27cb3Hbv3r344IMPsHr1amRnZzfq8xJTCxDS0nDX/FWmoTrgrl27Gv3Bn+rAKX9Txul6\nAOqSy+WIi4vDypUrAQDr169Hp06d6j07nz17NgDg9u3bSEhIUDxWVVJuKR4IS9HZS7+qkgghRN9p\nfAwgKysLXl5esLKygpWVFTw8PJCVlaX0fTY2NrCwaLg9qt4SCgQCCAQCPMwrhY+jNS6cS6zzdWN4\nHBYWhs2bN2POnDl6EQ8X+etTPJQ/5W9o+ddH6WRw6kpKSsL58+cVjxljCAkJQWBgYIPv27t3L0aM\nGAEfH586X69vMritf6ahdYtmGNOR+0VrtOG/a/Mae3cPIUSzmrQgjLrs7e1RUlKCqVOnYsqUKSgp\nKYGjo2OD77l8+TK8vb3rPfg35HZWMTp5GGf3T9XavGZmZkZb4aMKVc5kjBnlT/lri8bHADw9PZGZ\nmal4nJWVBU9Pz3q3f/z4Mf7++29ERkaq/VmiMinyyyrAdzG+u3+/+uorfP7554iNjYVYLKZpmwkh\nGqfxLiAAuHHjBg4ePAgAiIiIQJcuXQAA58+fh7W1dY2unPnz56NFixbg8Xjw9/fHzJkz69xnXV1A\niSkiHLknxPphbTSdAueKiopgYWFBB35CSJM0aT2AxujatSu6du1a6/m6pidoypQSd7JLjLb7x8HB\ngesQCCFGzqDvBL6dVYwgTzuuw2iywsLCBl+nPlDK35RR/hyuCayvyivkSHlWjnZuhtsAVK3Nu2DB\nAq5DIYSYIINtAO7nliCgeTNYWxhmCocOHVLM4bN79+4Gt6W5UCh/U0b5czAXkL67nVWCTgbY/UMz\ndxJC9IVhnj7jn/5/AxwAPnnypNozd1IfKOVvyih/A7oPQBdkcoa/c0qwZCCf61DUNmnSJEyaNInr\nMAghxDCvAB7nl8HSnAcnG4Nsv9RGfaCUvymj/LWXv0E2AFlFEnTy0O/+f6FQiJMnT3IdBiGE1Msg\nG4CMQjG8Ha25DqNeVRU+ly5d0sj+qA+U8jdllD+NAdSQUShGW1dbrsOohSp8CCGGxICvAKy4DqOG\n06dPa21tXuoDpfxNGeVP9wHUoI9dQN7e3nTWrwESiQRCoRAATHKNZ0LUUTWXp6urK6ys1D8pNrgG\nQFwhh6i8Am52+nUFoGzBm6YQCAQmcRYkkUiQnZ0NHx8f8HgGeXFKiM7J5XKkp6fDw8ND7UbA4P7K\nMovE8LS3gjmPzg6NjVAopIM/IWri8Xjw8fFRXDmr9V4txKNVGYVieDtx1/1z6NAhREVF6fQzTeHs\nvwod/AlRX2P/bgyuCyijUAwfDvr//7s2L9E86vMnpPEa8/djcKdbGYUSnQ8AV5+5k4u1eU29DpoQ\noh0GdwVwPrUAz/vqbrWs7777Dlu3bqUKH0LUxBijqzo9Z3BXAHmlUgTq8CawF198kZOz/upMaQxA\nn40ePRr9+/fH8OHDMXDgQBw4cEDxWmlpKWbNmoV+/fohLCwM8fHxNd4bFxeHAQMGIDw8HOHh4fjt\nt990Hb5O5eTkYPbs2dDCkuN64dtvv0Xfvn3Rv39/LF++XOX3LVy4ECNGjFD8uLu7Izc3F0DlmulD\nhw7F8OHDMWbMGKSmptZ47/Lly3H79m2N5mFQVwCSCjkseWZoYWups8+kRdlJFTMzM3z22Wfo2rUr\niouL8dxzz2Hs2LGws7PDjh074OHhgX379iE/Px/h4eEICwuDq6sr7t27h507dyIhIQGOjo5gjKG0\ntJTrdLRGJpNh7ty52LJli1FeAaSnp2P37t04duwYbG1tMW/ePMTHx2Ps2LFK3/vJJ58o/v/ixYvY\nvHkz3NzcAAA9e/bE8ePHAQAHDx7EqlWrEBMTo9h+2bJlmDZtGmJiYuDs7KyRXAyqAcgvk8K5mYXW\nfqny8/PRvHlzrey7KUzlPgBVDN13rcn7OD6rW6PfW3VG++TJEzg5OcHGxgYAEB8fj++//x4A0Lx5\nc4wYMQK//vorXnnlFXzzzTeYNWsWHB0dAVQ2JHZ2qk1mWFpainXr1uHKlSswNzdHhw4d8PHHHwMA\nNm3aBHt7e8ybNw9A5RVKdHQ0goODAQDz5s1DQEAATp06hfLycsybNw/jxo3DmTNnsGvXLkW8d+7c\nwTvvvIPff/8dQGXBw+LFi5GXlwfGGNatW6fYpyp+/PFHPP/882jVqlWN5+Pj43HgwAEUFxejrKwM\ne/fuRdu2bQEAaWlpmDJlCkaPHo2TJ0/C1tYWhw4dAlDZoHzwwQe4fPkyKioq8Nprr2Hy5MmK/W7c\nuBGXL19Gbm4uPD09ERMTo/hetCE+Ph7jx4+HrW1lT8TLL7+Mbdu2qdQAVLdjxw7MnTtX8djc3Fzx\n/0FBQdizZ0+N7e3s7DBnzhx88sknWLt2bRMy+JdhNQClFWiuhbP/qgqfkpISxR8F0U9NOXhrwsKF\nC1FcXIyAgAD88MMPij/arKws+Pn5Kbbz9/fH06dPAQApKSkYMWJEoz5v9erVcHZ2xrFjx5Rua2Zm\nVuvk6MyZM/i///s/ODj8O27Wv39/xQG+RYsW+P777xEZGal4PSoqCjNmzMALL7yAJ0+eYNq0afjz\nzz9VjvnQoUNYvHhxref79eunOEju3r0bu3btwtatWxWvJycno0OHDli6dGmN98XGxoLH4+HIkSMQ\ni8UYPXo0evfujZYtWwIAZs2ahSVLlgAAZsyYgcOHD2PChAkNxpiWlob58+fXev6dd97BoEGDGnzv\nkydP0L17dyxZsgQXLlzAgQMHkJaW1uB7/is5ORmPHz/G4MGD63z9xIkTGDp0aK3nBw8ejKVLl5pq\nAyDVePfPoUOHsGTJEkRERNT6xdMXdPavP7Zu3YqHDx/iyy+/BJ/PV/l9je0L//XXX3HtWuOueszM\nzDB79uwaB/8qEREROHjwIGbPno2jR4/i1KlTitfOnDmDnJwcfPbZZwAq79AWiUQqdzskJyfDy8ur\n1vPNmzfHrVu3cOfOHTx8+BDZ2dk1Xg8ICKjzLPrUqVNIS0vDmDFjAADl5eV48OCBogFwdnaGQCDA\no0ePUFpaWmu/dfH390dCQoJK+fxXVSPr7++PZ8+eNWofu3fvxhtvvFHna1lZWfjxxx9x5MiRWq9Z\nW1tDKpVCLBbD2rrp1ZCG1QCUSTV2BUAzd5LGmjBhAr7++mscOHAA06dPBwB4enri6dOn8PX1BQCk\npqaidevWAIBWrVrh4cOHCA0NbdTnVVRUNDrW+hqeadOmYebMmWjXrh169uwJe/t/l1e1sLDAt99+\nW2fDoQo7OzuUl5fXer7qjPvFF19EcHAwMjIyVNqfhYUFlixZgmHDhtV6raSkBKNHj8bw4cPRs2dP\nBAQEqNTYpqWl1XkAXrRoUb1n5VX8/PyQnp6Od999F0BlX76/v79KuQCASCTC77//jnXr1tV6rby8\nHAsWLMD27dvr7caSyWQaOfgDBlYFlF8qRfNmmmmzLl++zFldv7roPgD9s2nTJqxbtw4ikQgAMH78\neEWfbX5+Po4ePYpRo0YBACIjI7Fnzx7k5+cDAKRSKdLT01X6nJEjR2LDhg2Kg1r1g5uzs7OigiQn\nJwcpKSkqx+/r6wsnJyds2LABM2bMqPHa8OHDsXHjRsVjuVyu8n4BoEePHrhz506t548cOYKPPvoI\ngwcPxvXr11W+Kho5ciQ+++wzFBcXA6j5b/Dw4UNYWlrivffeQ3BwMG7evKnSfv39/XHkyJFaP8oO\n/kBlAxYfH68YyI+JiUFERESt7fLy8up8/1dffYUpU6bUmrdHJpPhzTffxPz589GpU6c635uenq44\nsdAEg2oA8ko1dwUwbNgwrF27lqp8SKN07NgRY8aMUfTFzps3D5mZmejfvz/GjBmD5cuXo0WLFgAq\nJwpcvHgxxo8fj6FDh2LkyJE4f/68Sp+zdu1ayOVyxfuq91u/+OKLOHfuHBYuXIgvvvhCUU1SXUMF\nE9OmTUN+fj769OlT4/no6GiUlpbihRdewIgRI/D222+rFGuVV155pUaJbJXFixejb9++GD9+PAID\nAxWNl7JYJ0yYgFGjRmHMmDEYMWIERo4cqWgMOnfuDD8/P/Tt2xdz5sxBWFgYcnJy1IpXXT4+Pnjj\njTcQHh6O/v37w8XFpVbX1V9//YV+/fpBKpXWeF4qlWL//v147bXXau13z549EAgE2LhxI0aMGIGJ\nEyfW2iYmJgavv/66xnIxYwZSqHvixAnsetwMM5/3QihfMyVQRL9kZmbW2XdMDM+uXbsAoEaVC2ma\ns2fPIi4uDtu3b6/z9fr+fq5evVrvlY1BXQEUSyrgaqfeFYBQKMThw4e1FBEhpC5z586Fu7u70d4I\nxoXc3Fxs27ZNo/s0qAagRCyDn5Pq9b1Vc/g0topCX5jKGAAdLIzLxIkTjfJGMK5MmDChwVk/G/P3\nY1BVQBbmPNhamSvdjip8DJdcLqcpoQlRk7oD9VUM6i9Nle6fxMRETmfu1AZTuQ/A1dUV6enpjf5l\nJsQUVa0I5urqqvZ7DeoKwFWFCiB/f3866zdQVlZW8PDwQFZWFgBaH4AQZaq6fRqzHCRgaA2AClcA\nfn5+NW7JNwamNBeQlZUVvL29azxnSvnXhfKn/LWVv0F1Abk0090soIQQYuy0ch/AzZs3cfDgQQDA\npEmTEBQU1ORtT5w4gRQrX4wPcgdQWeFz7NgxRb0xIYSQ2hq6D0DjXUByuRxxcXFYuXIlAGD9+vXo\n1KlTnf256mwLAM42FrQ2LyGEaIjGu4CysrLg5eUFKyurWoN6TdkWAG78edzoKnxUYSr3AdSH8qf8\nTZk289d4F1BSUlKNeU4YYwgJCUFgYGCTtj1x4oQmwySEEJOhsy4ge3t7lJSUYNasWWCMYd++fYqV\nkJqyrSqz9BFCCFGdxruAPD09kZmZqXiclZUFT0/PJm9LCCFEs7RSBXTjxg1FZU9ERAS6dOkCoHLV\ne2tra3Tv3l3ptoQQQrTLYKaDJoQQolkGdSMYIYQQzaEGgBBCTJRezQWkjTuIDYk6Oe3duxcZGRmQ\ny+WYO3cuPDw8dBWm1qj7nUqlUrz99tsYM2ZMnQuGGxJ1cs/Ly8OOHTsgk8nQunVrvPzyy7oKU2vU\nyf/MmTM4duwYzM3NMXnyZIP/2//7778RGxuLjh07IjIyssFtNX7cY3pCJpOxFStWMLFYzMRiMVu1\nahWTy+VN3tZQNDanW7dusT179uggQu1qTP6HDx9mW7ZsYb/99puOotQOdXPfunUru3fvng4j1C51\n81+0aBGTyWSspKSELVu2TIeRaseNGzfYxYsXWWxsbIPbaeO4pzddQNq8g9gQNDYnGxsbWFjo1YVc\no6ibv1gsxs2bN/H8888b/Epi6uQul8uRnZ2Ndu3a6ThK7VH3u/f19cXdu3dx9erVOm8aNTRdunSB\nvb290u20cdzTmyNHcXEx7OzsEBMTAwCwtbVFUVFRnYscq7OtoWhsTqdOncKIESN0EaJWqZv/0aNH\nMWzYMIhEIl2GqRXq5F5YWAiJRIItW7agtLQUw4cPR8+ePXUdskap+9136dIFhw8fRkVFBcLDw3UZ\nKqe0cdzTmyuAqruCp06diilTpqCkpETpHcSqbGsoGpPT5cuX4e3tDR8fHx1FqT3q5F9aWop79+4h\nODhYx1Fqh7q/+7a2tli0aBGWL1+On3/+GRKJRMcRa5Y6+WdnZ+Pq1auIiorC8uXL8csvvxh8/qrS\nxnFPb64ATP0OYnVzevz4Mf7++2+lg0aGQp387927B6lUim3btiEnJwcymQxBQUHw9fXVVbgapU7u\nFhYWcHV1hUgkQvPmzY2i+0+d/OVyOWQyGYDKucOM5eCvSjemNo57enUjmKnfQaxO/vPnz0eLFi3A\n4/Hg7++PmTNnchKzJqmTf5XTp09DLBYbfFeAOrkLhULs3bsXpaWl6NOnj1F0AaqT/08//YT79+9D\nLpcjNDQUAwYM4CJkjYmPj8f169chEonQsWNHvP766wB0c9zTqwaAEEKI7ujNGAAhhBDdogaAEEJM\nFDUAhBBioqgBIIQQE2X4NWSEE3FxcThz5gyaN28OAHBxccG7776r9H3FxcXYtGkT8vLyMHz4cIwe\nPVrboQIAJk+ejHbt2kEqlcLX1xezZ8+GlZWVRvadkZEBgUCASZMm1Xrt8OHDGDJkSL2fFRcXh9DQ\nUHh7e2skloZU/RtU1X289NJLaNu2rUrvLS0thUAgwNChQ7UZItG1Jk0kQUzWDz/8wH755ZcmvT8h\nIUGDETUsMjJS8f9ffvkli4uL08nnzp07lxUWFurks5Sp/m9w//59tnTpUpXfm52dzRYuXKiNsAiH\n6AqANBqrp4K4rKwMX331FfLz85Gbm4vevXtj6tSpKu2zqs7ZzMwM5eXleP/99+Hq6gqgchqEvXv3\noqioCIwxvPzyywgICFA77uDgYPz555+Kx7du3cIPP/wAoPL2+tmzZys+MycnB3v27IFEIoFYLMaE\nCRMUUy9IJBKsW7cOpaWlcHNzQ1RUlGKfEokE0dHREIlE2LhxI8zNzbFgwQLFfo8dO4bExESkpaVh\n1apVijzKysqwcOFCbN++HRYWFpDJZHjrrbewZcsW2NnZQS6X48CBA3jw4AFkMhnCw8PRr18/tf8N\n0tPT4e7urniclpaG77//HqWlpcjPz8f06dMVeSYlJeGrr75CTk4OVq1aBQcHB7z33nuK9549exa/\n//47AKBNmzZGMTupyeC6BSKG6YcffmDz589na9asYWvWrGGHDx+u8XpRURFjjDGxWMxef/11lp+f\nX2HIjlUAAAR0SURBVOv9dV0BvP/++yw5ObnOz9y6dSu7evUqY4yxnJwctnjxYpXjrTr7lclkbM+e\nPezYsWOMMcYKCgrY3LlzWV5eHmOMsYsXL7JVq1Yp3vf1118rvdK5c+cO27hxY52vzZ07V/FvUZc1\na9awR48e1Xhux44d7OLFi4wxxq5cucK2bdumeO3YsWPsm2++YYwxJpFI2LJly1h2dnaD8VWZPHky\nW7NmDZs9ezaLjY1lZWVlitfKysqYVCpljDGWnJzMFixYUOO9OTk5dV4BpKWlsdWrV7OKigrGWOXV\n1ZkzZ1SKh3CPrgBIo4WHh2PUqFF1vsbj8XDlyhXk5ubC0tISIpEILi4uSvc5ePBgfPHFF+jevTtC\nQkJqzHN069YtiEQiJCQkAKhcD6C4uFilmRQlEgk++OADMMbQuXNnRV92UlIS2rdvrxjL6NmzJ/73\nv/+hvLwcNjY26NOnD/bu3Yvc3Fz07NkTnTp1qrVvpuF7KQcOHIgjR46gZ8+eOHv2LAYPHqx47ebN\nm8jNzcXDhw8Vef33bL4+VlZWWL16Nfbs2QMLCwvY2NgoXrOxsYFQKMTDhw+Rm5tba5K9+nK8desW\nhEIh1q1bB6ByllZVvg+iH6gBII1W30EhNTUVO3bswJAhQ8Dn8+Ho6KjyQXLo0KHo378/rl+/jm3b\ntmH8+PHo3bs3gMpGJSoqCs2aNVM71qqD33+ZmZnVio0xBjMzMwBAYGAgNm3ahPv37+PIkSO4dOmS\n1qfd6NChA7788kvk5OQgNTUVnTt3Vrxmbm6OiIgIPP/8843e/9SpU7Fo0SL0799fMfh88uRJnDlz\nBuHh4ejYsaPK35eFhQV69OhB3T4GispAicbdunUL3bt3x9ChQ2Fra4ucnByV3yuXy2FtbY1evXoh\nJCQEjx49UrzWo0cPRV991bZNFRgYiPv370MoFAKonH/F29sb1tbWis/g8Xjo0KEDRo8ejaSkJLX2\nb2VlpTibVvWgamZmhtDQUGzbtg2hoaE1XuvRowcSEhJQXl6u1j6rc3BwwIQJE/Dll18qnrt8+TLG\njx+PkJAQZGZm1tqvlZUViouLFf/mVa8HBwfjwoULNeal1/QVEdEeugIgjVZ1lvxfoaGh2LJlC27f\nvg0fHx906NChznn7jx07hsuXL2PlypWKWS3379+Phw8fgjEGJycnzJkzR7H9Sy+9hNjYWCxduhSW\nlpbw8vLCm2++2aRYHRwc8Oabb+LTTz+FmZkZbG1tMW/ePMXrAoEAx48fB49Xea702muvqbxvABgy\nZAg2b94MNzc3hISE1OjOaUj//v1x8ODBWqW1YWFhEIlEWLNmjaK0dNmyZTW6c+pTPc4hQ4bgxIkT\nSExMRGhoKEaOHIk9e/bAxcUFXbt2hb29vaIbDACcnZ3RsWNHREVFwcnJCVOmTEGbNm3g7u6OOXPm\nYPv27Yp/o+nTp6N9+/Yq5Um4RZPBEUKIiaIuIEIIMVHUABBCiImiBoAQQkwUNQCEEGKiqAEghBAT\nRQ0AIYSYqP8HPZ0ylh12rFQAAAAASUVORK5CYII=\n",
       "text": [
        "<matplotlib.figure.Figure at 0x10b9cbb90>"
       ]
      }
     ],
     "prompt_number": 20
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "###Build your own classifier\n",
      "Pick a different algorithm and a new set of features. Can you beat the 0.74 AUC?"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "features = ['features1', ...]\n",
      "clf = ...\n",
      "clf.fit(..., ...)\n",
      "probs = clf.predict_proba(test[features])[::,1]\n",
      "plot_roc(\"Your Classifier\", probs)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [],
     "prompt_number": 2
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "###Converting to credit score\n",
      "We're going to take the P(delinquent) outputted by the model and convert it to a FICO style score. We calculate the log odds which we then convert into 'points'. in this case, a increase/decrease in 40 points (arbritrary) means a person's riskness has halved/doubled--40/log(2). We're starting with a base score of 340 (arbitrary)."
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "probs\n",
      "odds = (1 - probs) / probs\n",
      "score = np.log(odds)*(40/np.log(2)) + 340\n",
      "pl.hist(score)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 22,
       "text": [
        "(array([    1,     0,     2,    11,   317,  1274,  1873,  6922,  9670, 17011]),\n",
        " array([  32.61729114,   90.9744226 ,  149.33155407,  207.68868554,\n",
        "        266.04581701,  324.40294848,  382.76007995,  441.11721141,\n",
        "        499.47434288,  557.83147435,  616.18860582]),\n",
        " <a list of 10 Patch objects>)"
       ]
      },
      {
       "metadata": {},
       "output_type": "display_data",
       "png": "iVBORw0KGgoAAAANSUhEUgAAAYcAAAD+CAYAAADRRMnDAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAG/pJREFUeJzt3X9oXfX9x/FnYnbbJa2T2X1zrzr96qpic01GGENHYY7I\n+guGJT90SJSOGEY32B+bTFnTEmMQFtApFeeaf9L+sUECuyihioZWCGwDG9pYktZJN/hCzk217K43\nTZukOef7h9/eb7rTpj0399xz37mvx187n97kvE4S97r3/bk/KjzP8xAREVmiMuoAIiJSelQOIiLi\no3IQEREflYOIiPioHERExEflICIiPlXL/ePk5CQHDx5k06ZNtLe3A/DRRx/x/vvvc8stt/Dkk0+S\nTCYBGB8fZ2hoCIC2tra810VEJHrLlsPCwgI7d+7k9OnTubV3332X3/72t1y6dIne3l56e3txXZfB\nwUG6uroA6O3tJZlMBlqvq6ujoqIirOsUEZEAli2H+vp6JiYmrlq76667mJiYIJPJ8MADDwCQTqdJ\nJBLEYjEAamtrcRwHz/Nuev3K9xARkegtWw7XUl9fz/DwMJcvX2bLli0AzMzMUFNTw8DAAADV1dVk\ns1mAQOvXKoeRkZE8LktERJqamvL+2kDlMD09zdjYGL/+9a8B2LdvH/X19axbt44LFy7Q0dGB53n0\n9/dz66234rpuoPXraWxszPsCRUTK0djY2Iq+/obPVlr61kuLi4ssLi7m1ufn5wGIx+M4jpO7XTqd\nJh6PB15fjUZHR6OOsCLKHx3L2UH5rVv2kUMqleL48eNkMhkuXrxIZ2cn999/P6+88gqu67Jly5bc\nvkFLSws9PT0AtLa2AlBZWRloXURESkNFqb8r68jIiMZKIiIBjY2NrWjPQS+CExERH5VDyKzPLZU/\nOpazg/Jbp3IQEREf7TmIiKxC2nMQEZGCUzmEzPrcUvmjYzk7KL91KgcREfHRnoOIrArO+TnOXpgv\n2vn+qyZG4tY1RTtfUCvdcwj8xnsiIqXo7IV5nh/+rGjn69uxsaTLYaU0VgqZ9bml8kfHcnawn7/c\nqRxERMRH5RCyzZs3Rx1hRZQ/Opazg/385U7lICIiPiqHkFmfuyp/dCxnB/v5y53KQUREfFQOIbM+\nd1X+6FjODvbzl7tlX+cwOTnJwYMH2bRpE+3t7QCcO3eO/fv3s7i4yLe+9S2effZZAMbHxxkaGgKg\nra2NZDKZ17qIiERv2UcOCwsL7Ny586q1Q4cO8dRTT/HSSy/lisF1XQYHB9mzZw979uxhcHAw8HqJ\nv1A7b9bnrsofHcvZwX7+crfsI4f6+nomJiZyx67rMj09zYMPPnjV7dLpNIlEIvd50rW1tTiOg+d5\nN71+5XuIiEj0Ar19xvnz55mfn6evr4/Z2Vm2bdvGd7/7XWZmZqipqWFgYACA6upqstksQKD165XD\n6Ohobn555d6IlWPlV/58jzdv3lxSeSzkL7ZS+nlf63glbvjGexMTExw7doz29nYuX75Md3c33d3d\nuK5LV1cX3d3dfPHFF6RSKTo6OvA8j/7+fpqbm3FdN9B6PB73nV9vvCciN+OEky36eys1JNYX7XxB\nhf5hP0u7o6qqig0bNpDJZKiqqqKq6ssHHvF4HMdxcrdLp9PE4/HA66uR9bmr8kfHcnawn7/cLTtW\nSqVSHD9+nEwmw8WLF+ns7OTpp5/m7bffZnZ2lkcffTS3b9DS0kJPTw8Ara2tAFRWVgZaFxGR0qDP\ncxCRVUFjpavpM6RFRKTgVA4hsz53Vf7oWM4O9vOXO5WDiIj4qBxCZv39ZZQ/Opazg/385U7lICIi\nPiqHkFmfuyp/dCxnB/v5y53KQUREfFQOIbM+d1X+6FjODvbzlzuVg4iI+KgcQmZ97qr80bGcHezn\nL3cqBxER8VE5hMz63FX5o2M5O9jPX+5UDiIi4qNyCJn1uavyR8dydrCfv9ypHERExEflEDLrc1fl\nj47l7GA/f7lTOYiIiM+y5TA5OcmLL77IoUOHrlpfWFhg9+7dvPfee7m18fFx9u7dy969ezl58mTe\n66uN9bmr8kfHcnawn7/cLfsZ0gsLC+zcuZPTp09ftf7BBx9w33335Y5d12VwcJCuri4Aent7SSaT\ngdbr6uqoqKgo6MWJiEh+ln3kUF9fz7p1665am5ubY3x8nO985zu5tXQ6TSKRIBaLEYvFqK2txXGc\nQOvpdDqcK4yY9bmr8kfHcnawn7/cLfvI4VoOHz7M1q1byWQyubWZmRlqamoYGBgAoLq6mmw2CxBo\nPZFIXPOco6OjuT+0Kw9VdaxjHev4P4+LLerrDfPnUeF5nrfcDSYmJjh27Bjt7e3Mzs7yxhtv8MIL\nL3D06FEuXbrE1q1bmZqaIpVK0dHRged59Pf309zcjOu6gdbj8bjv/CMjIzQ2Nq74QqOytNgsUv7o\n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\nnSQNvL4AAAAASUVORK5CYII=\n",
       "text": [
        "<matplotlib.figure.Figure at 0x10b9bec90>"
       ]
      }
     ],
     "prompt_number": 22
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "def convert_prob_to_score(p):\n",
      "    \"\"\"\n",
      "    takes a probability and converts it to a score\n",
      "    Example:\n",
      "        convert_prob_to_score(0.1)\n",
      "        466\n",
      "    \"\"\"\n",
      "    odds = (1 - p) / p\n",
      "    scores = np.log(odds)*(40/np.log(2)) + 340\n",
      "    return scores.astype(np.int)\n",
      "\n",
      "convert_prob_to_score(probs)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "metadata": {},
       "output_type": "pyout",
       "prompt_number": 23,
       "text": [
        "array([432, 441, 569, ..., 603, 491, 507])"
       ]
      }
     ],
     "prompt_number": 23
    },
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "##We just did the following\n",
      "\n",
      "- Trained a credit classifier\n",
      "- Evaluated the results by both plotting data and generating reports\n",
      "- Converted the model into a credit score"
     ]
    }
   ],
   "metadata": {}
  }
 ]
}